Automatic database filtering system utilizing robotic filters

ABSTRACT

A plurality of air data may be collected by a sensor within a data center. The plurality of air data is received by a processor. At least a portion of the received plurality of air data corresponding to at least one zone within the data center may be determined to satisfy a threshold. Coordinates of a geographical location associated with the zone that includes the sensor may be transmitted to a robotic filter. The robotic filter can be dispatched to the transmitted geographic location to filter the zone.

BACKGROUND

The present disclosure relates to the field of data processing, and morespecifically, to robot control.

A data center is a facility used to house computer systems andassociated components, such as computer servers and database systems.Data centers generally include computer hardware racks, backup powersupplies, and data communications connections. Data centers can housesensitive information, and, therefore, data centers can further includeenvironmental controls (e.g., air conditioning and fire suppression) andvarious security devices. Large data centers can be industrial scaleoperations using as much electricity as a small town.

SUMMARY

According to one embodiment, a processor-implemented method forfiltering a plurality of air is provided. The processor-implementedmethod may include receiving, by a processor, a plurality of air datacollected by a sensor within a data center. The processor-implementedmethod may further include determining that at least a portion of theplurality of received air data corresponding to at least one zone withinthe data center satisfies a threshold. The processor-implemented methodmay further include transmitting coordinates of a geographical locationassociated with the zone that includes the sensor to a robotic filter.The processor-implemented method may further include dispatching therobotic filter to the transmitted geographic location to filter thezone.

According to another embodiment, a computer system for filtering aplurality of air is provided. The computer system may include one ormore processors, one or more computer-readable memories, one or morecomputer-readable tangible storage devices, and program instructionsstored on at least one of the one or more storage devices for executionby at least one of the one or more processors via at least one of theone or more memories, whereby the computer system is capable ofperforming a processor-implemented method. The processor-implementedmethod may include receiving, by a processor, a plurality of air datacollected by a sensor within a data center. The processor-implementedmethod may further include determining that at least a portion of theplurality of received air data corresponding to at least one zone withinthe data center satisfies a threshold. The processor-implemented methodmay further include transmitting coordinates of a geographical locationassociated with the zone that includes the sensor to a robotic filter.The processor-implemented method may further include dispatching therobotic filter to the transmitted geographic location to filter thezone.

According to yet another embodiment, a computer program product forfiltering a plurality of air is provided. The computer program productmay include one or more computer-readable storage devices and programinstructions stored on at least one of the one or more tangible storagedevices, the program instructions executable by a processor. Thecomputer program product may include program instructions to receive, aplurality of air data collected by a sensor within a data center. Thecomputer program product may further include program instructions todetermine that at least a portion of the plurality of received air datacorresponding to at least one zone within the data center satisfies athreshold. The computer program product may further include programinstructions to transmit coordinates of a geographical locationassociated with the zone that includes the sensor to a robotic filter.The computer program product may further include program instructions todispatch the robotic filter to the transmitted geographic location tofilter the zone.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other objects, features and advantages of the presentinvention will become apparent from the following detailed descriptionof illustrative embodiments thereof, which is to be read in connectionwith the accompanying drawings. The various features of the drawings arenot to scale as the illustrations are for clarity in facilitating oneskilled in the art in understanding the invention in conjunction withthe detailed description. In the drawings:

FIG. 1 is an exemplary networked computer environment, in accordancewith one embodiment of the present invention;

FIG. 2 illustrates an example of a data center where an embodiment ofthe present disclosure can be utilized, according to variousembodiments;

FIG. 3 illustrates an automated data center filtration system flowchartof a method for instructing a robotic filter to filter a data center,according to various embodiments;

FIG. 4 illustrates a dynamic interactive digital representationgeneration flowchart of a method for generating a digital representationof a data center, according to various embodiments;

FIG. 5 illustrates a robotic filter priority flowchart of a method fordesignating a robotic filter of one or more robotic filters to filter apriority zone, according to various embodiments;

FIG. 6 illustrates a robotic filter orientation flowchart of a methodfor determining a geographical location within a zone for the roboticfilter to be oriented while filtering the zone, according to variousembodiments;

FIG. 7 is a block diagram depicting an exemplary system forautomatically filtering a data center with robotic filters based on airdata, according to various embodiments;

FIG. 8 is a block diagram of internal and external components ofcomputers and servers depicted in FIG. 1 according to at least oneembodiment;

FIG. 9 is a block diagram of an illustrative cloud computing environmentincluding the computer system depicted in FIG. 1, in accordance with anembodiment of the present disclosure; and

FIG. 10 is a block diagram of functional layers of the illustrativecloud computing environment of FIG. 9, in accordance with an embodimentof the present disclosure.

DETAILED DESCRIPTION

Detailed embodiments of the claimed structures and methods are disclosedherein; however, it can be understood that the disclosed embodiments aremerely illustrative of the claimed structures and methods that may beembodied in various forms. This invention may, however, be embodied inmany different forms and should not be construed as limited to theexemplary embodiments set forth herein. Rather, these exemplaryembodiments are provided so that this disclosure will be thorough andcomplete and will fully convey the scope of this invention to thoseskilled in the art. In the description, details of well-known featuresand techniques may be omitted to avoid unnecessarily obscuring thepresented embodiments.

Embodiments of the present disclosure relate to the field of dataprocessing, and more specifically, to robot control. While the presentdisclosure is not necessarily limited to such applications, variousaspects of the disclosure may be appreciated through a discussion ofvarious examples using this context. The following described exemplaryembodiments provide a system, method, and computer program product to,among other things, automatically filter a data center based onreceiving collected air data that satisfies a threshold. Therefore, thepresent embodiment has the capacity to improve the technical field ofrobot control by automatically instructing robots to filter air within adata center where the air may be contaminated. More specifically, thepresent embodiment may allow for more efficient energy expenditure indata centers by relocating mobile filters to a contaminated zone of thedata center. Furthermore, the present embodiment may be capable ofreacting to changing contamination sources within a data center.

Current technologies and applications that are capable of mapping andexploring data centers include IBM® Mobile Management Technology (MMT)(IBM MMT and all IBM MMT-based trademarks and logos are trademarks orregistered trademarks of International Business Machines Corporationand/or its affiliates). MMT is an automated system that can evaluate theenvironment (e.g., temperature) of data centers. Furthermore, MMT candepict temperature distributions within the data center in a digitalrepresentation based on the environmental evaluation. Thisrepresentation can be transmitted to and displayed within a userinterface (UI).

Computers in data centers often experience high failure rates due todamage of computer hardware components by airborne pollutants (e.g.,chemical gases and minute particles). Severity of the airbornepollutants can vary by geographic location. Such pollutants may be mostprevalent in geographical locations that include industrial regions. Inaddition, growing use of cooling systems in data centers that rely onbringing air from a nearby environment into the data center can increasethe likelihood of bringing airborne pollutants into the data center. Thestructure of the data center (e.g., doors, windows, construction,relocations, and other variations) can also lead to an increase inairborne pollutants, and can create non-uniform air rates within a datacenter.

Currently, stationary chemical-based filters can be used to mitigategaseous contaminations within data centers. The stationarychemical-based filters may have limitations (e.g., reacting to changingsources of contamination). Changing sources of the airborne pollutantsmay require manual effort to relocate the chemical filter to the sourceof contamination (e.g., relocating the filter from near a window to neara door). The stationary chemical based filter limitations may not becapable of prioritizing contaminations. For example, identifying alargest contamination out of one or more contaminations. Thisprioritizing can be useful for utilizing available filters oridentifying filters that could be effective for counteracting thecontamination. Furthermore, stationary filters may not have the abilityto turn off unneeded filtration, which may result in wasted resources.Additionally, stationary filters may be unable to call for additionalfilters when needed. As such, it may be advantageous, among otherthings, to implement an automated robotic filtration program within datacenters.

According to at least one embodiment, a robotic filtration program canbe designed for filtering pollutants and gaseous contaminations withindata centers as the pollutants and gaseous contaminations arise. Airpollutants and gaseous contaminations may be referred herein as airbornepollutants, air contaminations, particulates, or gaseous particulates.Consequently, pollutants and gaseous contaminations may be filteredwithin the contaminated zone. Furthermore, the robotic filtrationprogram can analyze the air contamination level and respond to a highcontamination level by relocating to a contaminated zone to filterparticulate/gaseous particles.

Aspects of the present embodiment can utilize an automated system (e.g.,MMT) designed to evaluate an environment (e.g. air quality) of a datacenter. Evaluation of the air quality can be achieved by mounting achemical filter to the automated system. This mounting can enable thechemical filter to move freely about the data center. The automatedsystem can then visually depict, in three dimensions, air qualitydistributions within a data center. The automated system can furtherrely on stationary sensors distributed throughout the data center. Thestationary sensors can be mounted to one or more hardware racks withinthe data center. The stationary sensors can monitor the air quality bycollecting air data and transmitting the collected air data to theautomated system. Air data can include air samples within a nearbyproximity to the sensor, such as within a zone.

The data center can be organized into one or more zones. Each zone caninclude one or more stationary sensors. The air data can be utilized toupdate a visual depiction of the air quality within the data center. Theupdated visual depiction can be transmitted for display within an UI.The UI can be within a client device (e.g., a cellular phone or adesktop computer). The automated system can deploy robotic filters topurify the air (i.e. remove airborne pollutants) within a zone near thesensors in response to the air data satisfying a threshold. In oneembodiment, a plurality of robotic filters can be deployed in a singledata center to purify contaminated air. The automated system candetermine a robotic filter available and near the zone. Furthermore, theautomated system can determine the shortest distance from the available,nearby robotic filter to the contaminated zone. The automated system canthen instruct the robotic filter to filter the zone.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It can be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the variousembodiments. As used herein, the singular forms “a,” “an,” and “the” areintended to include the plural forms as well, unless the context clearlyindicates otherwise. It will be further understood that the terms“includes” and/or “including,” when used in this specification, specifythe presence of the stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof. In the foregoing detaileddescription of exemplary embodiments of the various embodiments,reference was made to the accompanying drawings (where like numbersrepresent like elements), which form a part hereof, and in which isshown by way of illustration specific exemplary embodiments in which thevarious embodiments may be practiced. These embodiments were describedin sufficient detail to enable those skilled in the art to practice theembodiments, but other embodiments may be used and logical, mechanical,electrical, and other changes may be made without departing from thescope of the various embodiments. In the foregoing description, numerousspecific details were set forth to provide a thorough understanding thevarious embodiments. But, the various embodiments may be practicedwithout these specific details. In other instances, well-known circuits,structures, and techniques have not been shown in detail in order not toobscure embodiments.

Different instances of the word “embodiment” as used within thisspecification do not necessarily refer to the same embodiment, but theymay. Any data and data structures illustrated or described herein areexamples only, and in other embodiments, different amounts of data,types of data, fields, numbers and types of fields, field names, numbersand types of rows, records, entries, or organizations of data may beused. In addition, any data may be combined with logic, so that aseparate data structure may not be necessary. The previous detaileddescription is, therefore, not to be taken in a limiting sense.

The following described exemplary embodiments provide a system, method,and program product to dynamically increase air quality within a datacenter via a mobile automated system upon air data satisfying athreshold. The mobile automated system may implement a response to athreshold being satisfied in the form of a robotic filter relocating toan area of contamination and filtering the contaminated area.

Referring to FIG. 1, an exemplary networked computer environment 100 isdepicted, in accordance with one embodiment. The networked computerenvironment 100 may include a client computing device 110 and a server120 interconnected via a communication network 130. According to atleast one implementation, the networked computer environment 100 mayinclude a plurality of client computing devices 110 and servers 120,only one of each being shown for illustrative brevity.

The communication network 130 may include various types of communicationnetworks, such as a wide area network (WAN), local area network (LAN), atelecommunication network, a wireless network, a public switched networkand/or a satellite network. The communication network 130 may includeconnections, such as wire, wireless communication links, or fiber opticcables. It may be appreciated that FIG. 1 provides only an illustrationof one implementation and does not imply any limitations with regard tothe environments in which different embodiments may be implemented. Manymodifications to the depicted environments may be made based on designand implementation requirements.

The client computing device 110 may include a processor 104 and a datastorage device 106 that is enabled to host a software program 108, anautomated robotic filtration program 112A, and may communicate with theserver 120 via the communication network 130, in accordance with oneembodiment of the invention. The client computing device 110 may be, forexample, a mobile device, a telephone, a personal digital assistant, anetbook, a laptop computer, a tablet computer, a desktop computer, arobotic filter, or any type of computing device capable of running aprogram and accessing a network. As will be discussed with reference toFIG. 8, the client computing device 110 may include internal components802 a and external components 804 a, respectively.

The server computer 120 may be a laptop computer, netbook computer,personal computer (PC), a desktop computer, or any programmableelectronic device capable of hosting an automated robotic filtrationprogram 112B and communicating with the client computing device 110 viathe communication network 130, in accordance with embodiments of theinvention. As will be discussed with reference to FIG. 8, the servercomputer 120 may include internal components 802 b and externalcomponents 804 b, respectively. The server 120 may also operate in acloud computing service model, such as Software as a Service (SaaS),Platform as a Service (PaaS), or Infrastructure as a Service (IaaS). Theserver 120 may also be located in a cloud computing deployment model,such as a private cloud, community cloud, public cloud, or hybrid cloud.

According to the present embodiment, the automated robotic filtrationprogram 112A, 112B may be a program capable of receiving air datacollected by the client device 110 from the processor 104, determiningthat the air data satisfies a threshold by the software program 108,transmitting a geographic location of a zone to the robotic filter bythe software program 108, and dispatching a robotic filter to thegeographic location to filter the air. The automated robotic filtrationprogram 112A, 112B is explained in further detail below with respect toFIGS. 2-7.

Referring now to FIG. 2, an example data center 200 where an embodimentof the present disclosure can be utilized is depicted, according tovarious embodiments. The example data center 200 may include one or morezones (e.g., zones 206 a-d) and a robotic filter 208. Each zone caninclude one or more hardware racks (e.g., hardware racks 204 a-d) andone or more sensors (e.g., sensors 202 a-d). Each of the sensors 202 a-dmay be capable of monitoring airborne pollution within a nearbyproximity of the sensors 202 a-d (i.e., their respective zones 206 a-d).Additionally, the airborne pollution being monitored can includeparticles, humidity, gas leaks (e.g., high nitrous dioxide and carbonoxide concentrations), temperature, atmospheric pressure, radiation,pesticides, combustion emissions, and other environmental conditionsthat are capable of damaging computer hardware components. The sensors202 a-d can include instruments, such as particle counters, Geigercounters, thermometers, and barometers. Furthermore, the sensors 202 a-dcan collect air data within a nearby proximity and determine when theair data satisfies a threshold. The threshold may be a numericalrepresentation (e.g., parts per million per volume) indicating the limitof an acceptable difference between the collected air pollutant and anapproved quantity of the air pollutant. The magnitude of a particularair pollutant can have units that are relevant to the air pollutant(e.g. units of mmHg for atmospheric pressure). Satisfying the thresholdmay be accomplished when a magnitude of the collected airborne pollutantis more than the magnitude of the threshold. A threshold of a particularzone (e.g. zone 206 a) can depend on hardware within the zone (e.g.,zone 206 a). For example, the threshold can be lowered when hardwarewithin the zone 206 a is highly susceptible to airborne pollutants.

Additionally, the automated robotic filtration program 112A, 112B(FIG. 1) can update a visual depiction of the air distribution in realtime within the data center 200 based on the collected air data. Theupdated visual depiction can be displayed within an UI of a clientdevice 110 (FIG. 1) such as, a smart phone, tablet, laptop, or desktop.The automated robotic filtration program 112A, 112B (FIG. 1) can furthercommunicate with the robotic filter 208 for a particular zone (e.g.,zone 206 a) that the zone (e.g., zone 206 a) needs to be filtered. Thiscommunication can occur in response to the threshold being satisfied.

In embodiments, the sensors 202 a-d can be communicatively coupled tothe robotic filter 208. The robotic filter 208 can respond to acommunication from the sensors 202 a-d by relocating to the zone (e.g.,206 a) where filtration is needed. The robotic filter 208 can utilize afilter corresponding to a particular airborne pollutant. For example,the robotic filter 208 can utilize a chemical filter when a high densityof a particular chemical pollutant satisfies the threshold. In otherembodiments, one or more robotic filters 208 can be deployed to filter aparticular zone (e.g., zone 206 a) when there is a high level of anairborne pollutant. For example, one or more other robotic filters 208can relocate to the zone 206 a to filter air. A method for one or morerobotic filters 208 relocating to a particular zone (e.g., 206 a) inresponse to satisfying a threshold is discussed in reference to FIG. 3.

Referring now to FIG. 3, an automated data center filtration programflowchart 300 of a method for instructing a robotic filter 208 (FIG. 2)to filter a data center 200 (FIG. 2) is depicted, according to variousembodiments. At 302, the automated robotic filtration program 112A, 112B(FIG. 1) receives air data collected by a sensor (e.g., sensors 202 a-d(FIG. 2)). As previously described, air data can include airbornepollutants (e.g. particles, humidity), gas leaks (e.g., high nitrousdioxide and carbon oxide concentrations), temperature, atmosphericpressure, radiation, combustion emissions, and other environmentalconditions that are capable of damaging computer hardware (e.g.,computer hardware rack 204 a (FIG. 2)) within a zone (e.g., zone 206 a(FIG. 2)), such as, within a nearby proximity of the sensor 202 a (FIG.2). The sensors 202 a-d (FIG. 2) can include instruments, such asparticle counters, Geiger counters, thermometers, and barometers. Theair data can be received in the form of numerical data representing thequantities of each type of airborne pollutant in associated units. Forexample, temperature can be measured in units of Kelvin. Furthermore,the sensors 202 a-d (FIG. 2) can continually collect air samples inincremented time intervals (e.g., every five minutes or every hour). Thesensors 202 a-d (FIG. 2) can be located throughout the data center. Forexample, the sensors 202 a-d (FIG. 2) can be located on computerhardware racks 204 a-b (FIG. 2) or integrated into the computer hardwareracks 204 a-b (FIG. 2).

Next, at 304, the automated robotic filtration program 112A, 112B(FIG. 1) determines whether the air data satisfies a threshold.According to one implementation, the method may continue along theautomated data center filtration flowchart 300, if the air datasatisfies a threshold. If the automated robotic filtration program 112A,112B (FIG. 1) determines the air data satisfies a threshold (step 304,“YES” branch), the automated robotic filtration program 112A, 112B(FIG. 1) may continue to transmit coordinates to a robotic filter 208(FIG. 2) that includes a filter at step 306. If the automated roboticfiltration program 112A, 112B (FIG. 1) determines the air data does notsatisfy a threshold (step 304, “NO” branch), the automated data centerfiltration flowchart 300 of the method may return to step 302 to receiveair data collected by the sensors 202 a-d (FIG. 2).

Determining whether the air data satisfies a threshold can be made inresponse to receiving the air data collected by the sensors 202 a-d(FIG. 2). The threshold may be a numerical representation indicating thelimit of an acceptable difference between the collected air contaminantsand an approved quantity of the air contaminants. Satisfying thethreshold may be accomplished when a magnitude of the collected airbornepollutant is more than the magnitude of the threshold. Each pollutantcan have a different acceptable difference. The acceptable differencecan depend on the airborne pollutants (e.g. chemical gases and dust)effect on hardware within a zone. For example, an increase of chemicalgases and dust in the air can damage the hardware more than an increaseof other environmental conditions (e.g. radioactivity). When theautomated robotic filtration program 112A, 112B (FIG. 1) determines thatthe air data does satisfy the threshold, the automated data centerfiltration flowchart can continue to 306.

Then, at 306, the automated robotic filtration program 112A, 112B(FIG. 1) transmits coordinates to a robotic filter 208 (FIG. 2) thatincludes a filter. The transmitted coordinates may correspond to ageographical location within a zone (e.g., 206 a (FIG. 2)) adjacent towhere the sensors 202 a-d (FIG. 2) collected the air data. Thetransmission can be in response to the air data satisfying the thresholdat step 304. In some cases, the geographic location of a zone (e.g., 206a (FIG. 2)) can include an orientation for the robotic filter 208 (FIG.2) within the zone 206 a (FIG. 2). For example, the orientation caninclude a direction for the robotic filter 208 (FIG. 2) to face in orderto counteract a wind current. The wind current can be propagating from ahole in a window and/or around a door. In embodiments, the sensor 202 a(FIG. 2) can be communicatively coupled to the robotic filter 208 (FIG.2) located within the data center 200 (FIG. 2). In some cases, therobotic filter 208 (FIG. 2) may not be within the data center 200 (FIG.2). For example, the robotic filter 208 (FIG. 2) can be located withinanother data center adjacent to the data center 200 (FIG. 2).

Next, at 308, the automated robotic filtration program 112A, 112B(FIG. 1) dispatches the robotic filter 208 (FIG. 2) to the geographiclocation of the zone (e.g., 206 a) to filter air. This dispatching canbe based on the air data collected in step 302. In some cases, thedispatching can include transmitting one or more paths from the roboticfilter 208 (FIG. 2) to the zone (e.g., 206 a (FIG. 2)). In some cases,the one or more paths can include a shortest distance path. In somecases, the robotic filter 208 (FIG. 2) can include one or more filters.Each of the one or more filters can be associated with the type of airpollutant. For example, a chemical filter can be associated withchemical gases. An air dehumidifier can be associated with an increaseof humidity. In some cases, the robotic filter 208 (FIG. 2) can includean electric-based fan that could redirect air into a filter for moreexpeditious filtering. For example, an electric-based fan can redirect achemical gas into a chemical filter.

Referring now to FIG. 4, a dynamic interactive digital representationgeneration flowchart 400 of a method for generating a digitalrepresentation of a data center 200 (FIG. 2) is depicted, according tovarious embodiments. At 402, the automated robotic filtration program112A, 112B (FIG. 1) instructs a robotic filter 208 (FIG. 2) to traversethe data center 200 (FIG. 2) and collect digital images of the datacenter 200 (FIG. 2). In some cases, collecting the digital images can bea first step of utilizing embodiments of the present disclosure within adata center 200 (FIG. 2). For example, the robotic filter 208 (FIG. 2)can traverse the data center 200 (FIG. 2) and collect digital imagesbefore any filtering begins.

Next, at 404, the automated robotic filtration program 112A, 112B(FIG. 1) receives the digital images of the data center 200 (FIG. 2)collected by the robotic filter 208 (FIG. 2) at step 402. In some cases,the digital images can be collected by electrical instruments (e.g., adigital camera). The digital camera can be integrated into or attachedto the robotic filter 208 (FIG. 2). In some cases, aspects of thepresent disclosure can leverage existing technologies (e.g., MMT) tocollect the digital images. The robotic filter 208 (FIG. 2) can identifythe sensors 202 a-d (FIG. 2) by detecting electromagnetic frequenciesbeing emitted from the sensors 202 a-d (FIG. 2). The sensors 202 a-d(FIG. 2) can wirelessly emit frequencies within the electromagneticspectrum (e.g., radio frequency). In some cases, the electromagneticfrequency can be emitted by radio frequency identification (RFID)devices that can be integrated into the sensors 202 a-d (FIG. 2). Therobotic filter 208 (FIG. 2) can then detect frequencies emitted by theRFID.

Then, at 406, the automated robotic filtration program 112A, 112B(FIG. 1) locates the sensors 202 a-d (FIG. 2) within the data center 200(FIG. 2). Locating the sensors 202 a-d (FIG. 2) can be based on thedigital images received at step 404. Furthermore, locating the sensors202 a-d (FIG. 2) can be based on the robotic filter 208 (FIG. 2)detecting a frequency emitted by the sensors 202 a-d (FIG. 2) at step404. Locating the sensors 202 a-d (FIG. 2) based on the received digitalimages can be accomplished by performing known image analysis methods.The known image analysis methods can extract meaningful information fromwithin the received digital images to be utilized by the robotic filter208 (FIG. 2). Moreover, the known image analysis methods can be used forcreating a visual representation of the data center 200 (FIG. 2) in theform of a map. Additionally, the known image analysis methods canidentify the location of hardware racks 204 a-d (FIG. 2) within the datacenter 200 (FIG. 2), as well as formulate a topological layout of thedata center 200 (FIG. 2). This digital representation can be useful fordetermining a shortest distance from the robotic filter 208 (FIG. 2) toa zone (e.g., 206 a (FIG. 2)), as described in step 308 (FIG. 3).

Next, at 408, the automated robotic filtration program 112A, 112B(FIG. 1) organizes the data center 200 (FIG. 2) into one or more zones206 a-d (FIG. 2). Organizing the data center 200 (FIG. 2) into one ormore zones 206 a-d (FIG. 2) can be based on the location of the sensors202 a-d (FIG. 2), described at step 406. In some cases, the one or morezones 206 a-d (FIG. 2) can be based on the geographical locations of thesensors 202 a-d (FIG. 2) within the data center 200 (FIG. 2). Each ofthe zones 206 a-d (FIG. 2) can be included within a proximity of any oneof the sensors 202 a-d (FIG. 2). For example, any one of the zones 206a-d (FIG. 2) can be within a range of five feet from any one of thesensors 202 a-d (FIG. 2). The zones 206 a-d (FIG. 2) can be determinedbased on increasing the accuracy of the sensor (e.g., 202 a (FIG. 2))collecting air data. For example, the zone 206 a (FIG. 2) including thesensor 202 a (FIG. 2) can encompass more space when the sensor 202 a(FIG. 2) is located near a door or a window, due to a possible crack inthe window and/or door.

Next, at 410, the automated robotic filtration program 112A, 112B(FIG. 1) generates a digital representation of the data center 200 (FIG.2). The digital representation can be based on the digital imagescollected by the robotic filter 208 (FIG. 2) at step 402. Furthermore,the digital representation can be based on organizing the data center200 (FIG. 2) into the one or more zones 206 a-d (FIG. 2) in step 408.The digital representation can be in the form of a map. The map can beinteractive and can include at timestamp of when air data is collected.Additionally, the map can include a visual representation of the airpollutants in real time. For example, as the air data is collectedwithin the data center 200 (FIG. 2), the map can be updated by thesensors 202 a-d (FIG. 2) to include a visual representation of the airquality. For example, the updated visual representation can include whencarbon monoxide is detected within a zone (e.g., zone 206 a (FIG. 2))and can then depict the carbon monoxide within the digitalrepresentation in a particular color. In some cases, the interactive mapcan be displayed within a UI of a client device 110 (FIG. 1) such as, asmart phone. This can be useful when monitoring the air data collectedexternally to the data center 200 (FIG. 2).

Referring now to FIG. 5, a robotic filter priority flowchart 500 of amethod for designating a robotic filter 208 (FIG. 2) of one or morerobotic filters 208 (FIG. 2) to filter a priority zone is depicted,according to various embodiments. At 502, the automated roboticfiltration program 112A, 112B (FIG. 1) determines a priority zone (e.g.,zone 206 a (FIG. 2)) based on one or more sensors 202 a-d (FIG. 2)satisfying a threshold value. In some cases, the priority zone (e.g.,zone 206 a (FIG. 2)) can be any one of the one or more zones 206 a-d(FIG. 2). The priority zone (e.g., zone 206 a (FIG. 2)) can bedetermined based on having contaminations of one or more airbornepollutants within a proximity. For example, a determination could bebased on the priority zone (e.g., zone 206 a (FIG. 2)) including morecarbon dioxide or other chemical gases than other zones 206 b-d (FIG. 2)within the data center 200 (FIG. 2). As an additional example, thedetermination could be based on the priority zone (e.g., 206 a (FIG. 2))including a combination of pollutants (e.g. chemical gases and minuteparticles) which could potentially damage hardware within the priorityzone (e.g., 206 a (FIG. 2)) at a quicker rate than other hardwareincluded within other zones 206 b-d (FIG. 2) within the data center 200(FIG. 2).

Then, at 504, the automated robotic filtration program 112A, 112B(FIG. 1) selects a robotic filter (e.g., robotic filter 208 (FIG. 2)) ofone or more robotic filters 208 (FIG. 2) that is not being utilizedwithin the data center. When all robotic filters 208 (FIG. 2) within thedata center 200 (FIG. 2) are currently being utilized, a robotic filter208 (FIG. 2) could be identified based on the time of completion of thecurrent filtering. For example, a robotic filter 208 (FIG. 2) may beidentified based on the robotic filter 208 (FIG. 2) finishing filteringa zone (e.g., zone 206 a (FIG. 2)) in three minutes, whereas all otherrobotic filters 208 (FIG. 2) will be finished in more than five minutes.

Next, at 506, the automated robotic filtration program 112A, 112B(FIG. 1) determines whether the filter of the robotic filter 208 (FIG.2) satisfies a filter threshold value. The filter not satisfying thefilter threshold value can mean that the filter may not be effective infiltering the zone (e.g., zone 206 a (FIG. 2)) such as, a cloggedfilter. The filter may not satisfy the threshold when the current filtertype may not be a correct filter type. For example, the current filtercan be designed to filter chemical gases and may need to be replacedwith a minute particle filter to effectively filter the zone 206 a (FIG.2). According to one implementation, the robotic filter priorityflowchart 500 of a method may continue to 510 when the automated roboticfiltration program 112A, 112B (FIG. 1) determines that the filtersatisfies the filter threshold value. If the automated roboticfiltration program 112A, 112B (FIG. 1) determines that the filter doesnot satisfy the filter threshold, the automated robotic filtrationprogram 112A, 112B (FIG. 1) can continue to 508.

Then, at 508, the automated robotic filtration program 112A, 112B(FIG. 1) replaces the filter with an appropriate filter. The appropriatefilter can be any filter that can be effective for filtering theairborne pollutant that satisfied the threshold value at step 502. Forexample, if a chemical gas is the airborne pollutant that satisfied thethreshold value, then the appropriate filter may be a filter designed topurify air from chemical gases. Additionally, the appropriate filter canalso be the same type of filter that failed to satisfy the filterthreshold value due to being clogged. For example, the appropriatefilter can be a new filter that is not clogged.

However, if it is determined that the filter does satisfy the filterthreshold value at 506, or if the automated robotic filtration program112A, 112B (FIG. 1) replaced the filter at 508, then the automatedrobotic filtration program 112A, 112B (FIG. 1) determines a path at 510.The path can be based on a geographical location of the priority zone(e.g., zone 206 a (FIG. 2)) and the geographical location of the roboticfilter 208 (FIG. 2). The path can be starting from the robotic filter208 (FIG. 2) and ending at a geographic location near or within the zone(e.g., zone 206 a (FIG. 2)). In some cases, the path can be the shortestdistance from the robotic filter 208 (FIG. 2) to the zone 206 a (FIG.2). Alternatively, the path can be determined based on where roboticfilters 208 (FIG. 2) and other obstacles may be at given times. The pathcan be updated in increment timed intervals (e.g., every five seconds).

Then, at 512, the automated robotic filtration program 112A, 112B(FIG. 1) transmits the path to the robotic filter 208 (FIG. 2). In somecases, the path can be stored when the robotic filter 208 (FIG. 2) iscurrently filtering a zone (e.g., zones 206 b-d (FIG. 2)), as opposed tothe priority zone (e.g., zone 206 a (FIG. 2)). The path can be updatedbased on real-time information by the sensors 202 a-d (FIG. 2). Forexample, if an obstacle is included in the robotic filter's 208 (FIG. 2)path that was not included in the initial path, then the robotic filter208 (FIG. 2) can go around that obstacle.

Next, at 514, the automated robotic filtration program 112A, 112B(FIG. 1) instructs the robotic filter 208 (FIG. 2) to filter thepriority zone (e.g., zone 206 a (FIG. 2)). This instruction can besubstantially similar to the instruction given to the robotic filter 208(FIG. 2) at step 308 (FIG. 3). In some cases, the robotic filter 208(FIG. 2) can be communicatively coupled with sensors 202 a-d (FIG. 2)located externally to the data center 200 (FIG. 2) that can collect airdata outside the data center 200 (FIG. 2). The external air data can becompared with air data collected within the data center 200 (FIG. 2),thereby increasing the likelihood of determining when airbornepollutants can enter the data center 200 (FIG. 2), and from where theairborne pollutants may enter. The robotic filter 208 (FIG. 2) canutilize this external information and respond to airborne pollutantsbefore any of the sensors 202 a-d (FIG. 2) satisfy the threshold value.

Referring now to FIG. 6, a robotic filter orientation flowchart 600 of amethod for determining a geographical location within a zone (e.g., zone206 a (FIG. 2)) for the robotic filter 208 (FIG. 2) to be oriented whenfiltering the zone 206 a (FIG. 2) is depicted, according to variousembodiments. At 602, air data collected by a sensor (e.g., 202 a (FIG.2)) is received, substantially similar to the method at step 302 (FIG.3). As previously described, air data can include airborne pollutants(e.g. particles, humidity), gas leaks (e.g., high nitrous dioxide andcarbon oxide concentrations), temperature, atmospheric pressure,radiation, combustion emissions, and other environmental conditions thatare capable of damaging computer hardware within a zone (e.g., 206 a(FIG. 2)), such as, within a nearby proximity of the sensor (e.g.,sensor 202 a (FIG. 2)). The sensors 202 a-d (FIG. 2) can includeinstruments, such as particle counters, Geiger counters, thermometers,and barometers. In embodiments, the sensors 202 a-d (FIG. 2) can collectair data at regular time intervals (e.g., every five minutes or everyhour).

Then, at 604, the automated robotic filtration program 112A, 112B(FIG. 1) receives external air data collected by an external sensorlocated outside the data center 200 (FIG. 2). In embodiments, theexternal sensors can include instruments, such as the sensors 202 a-d(FIG. 2), collecting air data within the data center 200 (FIG. 2) at602. In some cases, the external sensors can be stationary or mobile.The external sensors can be within a proximity of the data center 200(FIG. 2). The stationary sensors can be at fixed locations surroundingand within a range of the data center 200 (FIG. 2) such as, one hundredfeet or one mile from the data center. Externally stationed sensors cantrack air pollutant distributions to determine potential effects of theair pollutants to the data center 200 (FIG. 2). Externally mobilesensors can traverse nearby (e.g. within twenty feet or fifty feet) ofthe data center 200 (FIG. 2). The external sensors can be located nearsources of fresh air to the data center 200 (FIG. 2) such as, near whereair is collected when the data center utilizes an air cooling system.Additionally, the mobile sensors can be relocated to potential leaks ofair to the data center 200 (FIG. 2) such as, doors, windows, and thesource of fresh air.

Next, at 606, the automated robotic filtration program 112A, 112B(FIG. 1) compares the external air data to the air data. This comparisoncan be advantageous for predicting an increase of air pollutants withinthe data center 200 (FIG. 2) and can provide an opportunity to preparefor a predicted increase in air pollutants. In some cases, the air datacan be compared to a source of fresh air. This can be advantageous forcounteracting airborne pollutants that might be pumped into the datacenter 200 (FIG. 2) by a cooling system.

Then, at 608, the automated robotic filtration program 112A, 112B(FIG. 1) determines a geographical location within the zone 206 a (FIG.2) for the robotic filter 208 (FIG. 2) to filter based on the comparisonof the external air data and the air data at 606. In some embodiments,the one or more robotic filters 208 (FIG. 2) can include chemicalfilters along with light weight electric-based fans. The electric-basedfans can redirect airflow to the chemical filter based on the comparisonmade at step 606. The redirection of airflow can increase the rate offiltering air. For example, a prediction can be made that there will bean increase of air pollutants near a door of the data center 200 (FIG.2). Robotic filters 208 (FIG. 2) can then be relocated to near the doorand the electric-based fans can redirect the air pollutants into achemical filter. This can increase the likelihood of filtering airentering the data center 200 (FIG. 2) before the air pollutants canaffect hardware of the data center 200 (FIG. 2). In some cases, thedirection of the flow of airborne pollutants can be determined.Determining a geographical location within the zone 206 a (FIG. 2) toplace the filter to increase the rate of filtering the data center 200(FIG. 2) can be made based on the flow of air pollutants. Filtration ofthe air can be increased by positioning the electric-based fan such thatthe air pollutant can be redirected into the filter. In some cases, oneor more robotic filters 208 (FIG. 2) can be instructed to dispersethroughout the data center 200 (FIG. 2) in response to fresh air beingcompared to the air data. In this case, the robotic filter 208 (FIG. 2)can be prepared when an air cooling system pumps airborne pollutantsinto the data center 200 (FIG. 2). Furthermore, the robotic filter 208(FIG. 2) can begin filtering the data center 200 (FIG. 2) before thecooling system pumps the airborne pollutants into the data center 200(FIG. 2).

A follow up example explaining embodiments of the present disclosure isincluded herein. Initially the robotic filter 208 (FIG. 2) explores theentire data center 200 (FIG. 2), as previously described at step 402(FIG. 4), and generates a map of the data center 200 (FIG. 2) aspreviously described at step 410 (FIG. 4). A geographic location of theone or more sensors 202 a-d (FIG. 2) are identified as previouslydiscussed at step 406 (FIG. 4) and then saved. An automated roboticfiltration program 112A, 112B (FIG. 1) can organize the data center 200(FIG. 2) into zones 206 a-d (FIG. 2) based on the geographic locationsof the one or more sensors 202 a-d (FIG. 2), as previously described atstep 408 (FIG. 4). Any of the zones 206 a-d (FIG. 2) can include one ormore sensors 202 a-d (FIG. 2). The automated robotic filtration program112A, 112B (FIG. 1) can further prioritize the zones 206 a-d (FIG. 2)based on real-time air data collected within each zone as previouslydescribed at step 502 (FIG. 5). A robotic filter 208 (FIG. 2) canrelocate to a priority zone (e.g., zone 206 a (FIG. 2)) when at leastone threshold value is satisfied. Thereafter, the map of the data center200 (FIG. 2) and a three-dimensional air quality distribution can bevisually displayed within a UI on an electric device. The visual displaycan highlight problem areas and potential causes (e.g., leaks in awindow or door), and then corrective action may be taken. The automatedrobotic filtration program 112A, 112B (FIG. 1) can analyze the air dataperiodically and may re-deploy the robotic filters 208 (FIG. 2) toanother zone (e.g., zone 206 b (FIG. 2)) based on real-time air data.The automated robotic filtration program 112A, 112B (FIG. 1) can theninstruct the filter to be replaced, as described at step 508 (FIG. 5),and can further instruct the robotic filter 208 (FIG. 2) to return tothe docking station when a threshold value is not satisfied. In somecases, the robotic filters 208 (FIG. 2) can be battery operated. Thebattery operated robotic filters 208 (FIG. 2) can recharge at a dockingstation when they are not being utilized.

Referring to FIG. 7, a diagram of an example system 700 forautomatically filtering a data center 200 (FIG. 2) with robotic filters208 based on air data is depicted, according to various embodiments. Insome embodiments, one or more sensors 202 a-d can collect air data, aspreviously discussed at step 302 (FIG. 3), near one or more computerhardware racks 204 a-d (FIG. 2) located within a data center 200 (FIG.2) utilizing an automatic filtering system 720. The automatic filteringsystem 720 could include an aspect of the present disclosure integratedwithin its housing. The sensors 202 a-d can include, but are not limitedto, particle counters, Geiger counters, thermometers, and barometers.According to at least one embodiment, the sensors 202 a-d can transmitthe air data to a collector module 702 in the form of an electricalsignal. According to at least one other embodiment, the collector module702 can receive the air data, as previously discussed at step 302 (FIG.3), in discrete time intervals. According to yet another embodiment,once the collector module 702 has received the air data from the sensors202 a-d, the sensors 202 a-d can then transmit the electrical signal toan analyzer module 703. The analyzer module 703 can perform basiccalculations and chemical analysis to decode the air data. For example,the analyzer module 703 can determine the air quality and airbornepollutants nearby the sensors 202 a-d. Once the analyzer module 703 hasanalyzed the air data, the analyzer module 703 can transmit the analyzedair data to an identifier module 704.

The identifier module 704 can identify air pollutants that are within aproximity of the sensors 202 a-d (i.e., within a zone (e.g., zone 206 a(FIG. 2)) that includes the sensors 202 a-d. The identifier 704 modulecan also identify chemical gases, dust, minute particles, and otherairborne pollutants that can cause potential damage to computingdevices. The identifier module 704 can relate the position of each ofthe airborne pollutants in real time. In some embodiments, once theidentifier module 704 has identified airborne pollutants, the identifiermodule 704 can transmit an electrical signal that includes an analysisof the identified airborne pollutants to an organizer module 705.

The organizer module 705 can group one or more robotic filters 208within the data center 200 (FIG. 2). For example, the available roboticfilters 208 can be grouped together and the unavailable robotic filters208 can be grouped together. According to at least one embodiment, theorganizer module 705 can further weigh each of the robotic filters 208according to the position of the robotic filter 208 relative to the zone(e.g., zone 206 a (FIG. 2)) that includes the airborne pollutants. Forexample, a robotic filter 208 located nearby the zone 206 a (FIG. 2)might be weighted more heavily than a robotic filter 208 located faraway from the zone 206 a (FIG. 2). Once the organizer module 705 hasgrouped and weighted the robotic filters 208, the organizer module 705can transmit that information to a determiner module 706 in the form ofan electrical signal. According to at least one embodiment, thedeterminer module 706 can determine a robotic filter 208 based on theinformation that it has received. Then, the determiner module 706 cantransmit the analyzed information to a displayer module 707, as well asan instructor module 708.

The displayer module 707 can generate a visual representation that caninclude three-dimensional airborne pollutant distributions within thedata center 200 (FIG. 2), as previously discussed at step 410 (FIG. 4).The visual representation can be displayed within a UI. This generatedUI can be substantially similar to the UI described in FIG. 4 and FIG.5. For example, the UI can display within a screen 710 of the automaticfiltering system 720. The one or more sensors 202 a-d and roboticfilters 208 can be indicated within the UI along with a display of theair data. According to at least one embodiment, the displayer module 707can structure an image such that the visual representation fits to thescreen 710 of the automatic filtering system. This structuringcapability can fit to one or more UI screen sizes of differentdimensions (e.g., a smart phone, a desktop computer, and a tablet).

The instructor module 708 can also receive the analyzed information thatcan include the robotic filter 208 determined to filter the zone 206 a(FIG. 2) from the determiner module 706. The instructor module 708 caninstruct the robotic filter 208 to filter the zone 206 a (FIG. 2) aspreviously discussed at step 308 (FIG. 3). The instructor module 708 caninstruct the robotic filter 208 to proceed along a path that thedeterminer module 706 generated based on the distance from the roboticfilter 208 to the zone (e.g., zone 206 a (FIG. 2)), as previouslydescribed at step 514 (FIG. 5). According to at least one embodiment,the user of the client device 110 (FIG. 1) can set a preferred path forthe robotic filter 208 to traverse. According to at least one otherembodiment, the instructor module 708 can adjust the path. According toyet another embodiment, the user can then manually instruct the roboticfilter 208 used to filter the zone 206 a (FIG. 2).

The robotic filter 208 can output its current position. According to atleast one embodiment, the output can be connectively coupled with areal-time mapping module 709. The real-time mapping module 709 canmonitor the position of the robotic filter 208 with respect to objects(e.g. other robotic filters 208 and computer hardware racks 204 a-d(FIG. 2)) within the data center 200 (FIG. 2). The real-time mappingmodule 709 can determine the position of the robotic filter 208 withinthe data center 200 (FIG. 2) that the automatic filtering system 720 isoperating in. The real-time mapping module 709 can transmit a value ofthe position of the robotic filter 208 in the form of an electricalsignal to the instructor module 708. The instructor module 708 can thenadjust the position of the robotic filter 208 based on the value of theoutputted position of the robotic filter 208. According to at least oneembodiment, this process can repeat continuously so that the currentposition of the robotic filter 208 is being adjusted based on theenvironment at a present time.

It may be appreciated that FIGS. 2-7 provide only an illustration of atleast one embodiment but do not imply any limitations with regard to howdifferent embodiments may be implemented. Many modifications to thedepicted embodiment(s) may be made based on design and implementationrequirements.

In some embodiments, the operations and modules described herein can beincluded within and performed by components of a computer (e.g., aprocessor), such as the computer system described in FIG. 8.

FIG. 8 is a block diagram 800 of internal and external components of theclient computing device 110 and the server 120 depicted in FIG. 1 inaccordance with an embodiment of the present invention. It should beappreciated that FIG. 8 provides only an illustration of oneimplementation and does not imply any limitations with regard to theenvironments in which different embodiments may be implemented. Manymodifications to the depicted environments may be made based on designand implementation requirements.

The data processing system 802, 804 is representative of any electronicdevice capable of executing machine-readable program instructions. Thedata processing system 802, 804 may be representative of a smart phone,a computer system, PDA, or other electronic devices. Examples ofcomputing systems, environments, and/or configurations that mayrepresented by the data processing system 802, 804 include, but are notlimited to, personal computer systems, server computer systems, thinclients, thick clients, hand-held or laptop devices, multiprocessorsystems, microprocessor-based systems, network PCs, minicomputersystems, and distributed cloud computing environments that include anyof the above systems or devices.

The client computing device 110 (FIG. 1) and the server 120 (FIG. 1) mayinclude respective sets of internal components 802 a,b and externalcomponents 804 a,b illustrated in FIG. 8. Each of the sets of internalcomponents 802 include one or more processors 820, one or morecomputer-readable RAMs 822, and one or more computer-readable ROMs 824on one or more buses 826, and one or more operating systems 828 and oneor more computer-readable tangible storage devices 830. The one or moreoperating systems 828, the automated robotic filtration program 112A(FIG. 1) in the client computing device 110 (FIG. 1), and the automatedrobotic filtration program 112B (FIG. 1) in the server 120 (FIG. 1) arestored on one or more of the respective computer-readable tangiblestorage devices 830 for execution by one or more of the respectiveprocessors 820 via one or more of the respective RAMs 822 (whichtypically include cache memory). In the embodiment illustrated in FIG.8, each of the computer-readable tangible storage devices 830 is amagnetic disk storage device of an internal hard drive. Alternatively,each of the computer-readable tangible storage devices 830 is asemiconductor storage device such as ROM 824, EPROM, flash memory or anyother computer-readable tangible storage device that can store acomputer program and digital information.

Each set of internal components 802 a,b also includes a R/W drive orinterface 832 to read from and write to one or more portablecomputer-readable tangible storage devices 838 such as a CD-ROM, DVD,memory stick, magnetic tape, magnetic disk, optical disk orsemiconductor storage device. A software program, such as the automatedrobotic filtration program 112A, 112B (FIG. 1), can be stored on one ormore of the respective portable computer-readable tangible storagedevices 838, read via the respective R/W drive or interface 832 andloaded into the respective hard drive 830.

Each set of internal components 802 a,b also includes network adaptersor interfaces 836 such as a TCP/IP adapter cards, wireless Wi-Fiinterface cards, or 3G or 4G wireless interface cards or other wired orwireless communication links. The automated robotic filtration program112A (FIG. 1) in the client computing device 110 (FIG. 1) and theautomated robotic filtration program 112B (FIG. 1) in the server 120(FIG. 1) can be downloaded to the client computing device 110 (FIG. 1)and the server 120 (FIG. 1) from an external computer via a network (forexample, the Internet, a local area network or other, wide area network)and respective network adapters or interfaces 836. From the networkadapters or interfaces 836, the automated robotic filtration program112A (FIG. 1) in the client computing device 110 (FIG. 1) and theautomated robotic filtration program 112B (FIG. 1) in the server 120(FIG. 1) are loaded into the respective hard drive 830. The network maycomprise copper wires, optical fibers, wireless transmission, routers,firewalls, switches, gateway computers and/or edge servers.

Each of the sets of external components 804 a,b can include a computerdisplay monitor 844, a keyboard 842, and a computer mouse 834. Externalcomponents 804 a,b can also include touch screens, virtual keyboards,touch pads, pointing devices, and other human interface devices. Each ofthe sets of internal components 802 a,b also includes device drivers 840to interface to computer display monitor 844, keyboard 842, and computermouse 834. The device drivers 840, R/W drive or interface 832, andnetwork adapter or interface 836 comprise hardware and software (storedin storage device 830 and/or ROM 824).

It is understood in advance that although this disclosure includes adetailed description on cloud computing, implementation of the teachingsrecited herein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g. networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes.

Referring now to FIG. 9, illustrative cloud computing environment 950 isdepicted. As shown, cloud computing environment 950 comprises one ormore cloud computing nodes 100 with which local computing devices usedby cloud consumers, such as, for example, personal digital assistant(PDA) or cellular telephone 954A, desktop computer 954B, laptop computer954C, and/or automobile computer system 954N may communicate. Nodes 100may communicate with one another. They may be grouped (not shown)physically or virtually, in one or more networks, such as Private,Community, Public, or Hybrid clouds as described hereinabove, or acombination thereof. This allows cloud computing environment 950 tooffer infrastructure, platforms and/or software as services for which acloud consumer does not need to maintain resources on a local computingdevice. It is understood that the types of computing devices 954A-Nshown in FIG. 9 are intended to be illustrative only and that computingnodes 100 and cloud computing environment 950 can communicate with anytype of computerized device over any type of network and/or networkaddressable connection (e.g., using a web browser).

Referring now to FIG. 10 a set of functional abstraction layers 1000provided by cloud computing environment 950 (FIG. 9) is shown. It shouldbe understood in advance that the components, layers, and functionsshown in FIG. 10 are intended to be illustrative only and embodiments ofthe invention are not limited thereto. As depicted, the following layersand corresponding functions are provided:

Hardware and software layer 60 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 61; RISC(Reduced Instruction Set Computer) architecture based servers 62;servers 63; blade servers 64; storage devices 65; and networks andnetworking components 66. In some embodiments, software componentsinclude network application server software 67 and database software 68.

Virtualization layer 70 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers71; virtual storage 72; virtual networks 73, including virtual privatenetworks; virtual applications and operating systems 74; and virtualclients 75.

In one example, management layer 80 may provide the functions describedbelow. Resource provisioning 81 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 82provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may comprise applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 83 provides access to the cloud computing environment forconsumers and system administrators. Service level management 84provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 85 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 90 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 91; software development and lifecycle management 92; virtualclassroom education delivery 93; data analytics processing 94;transaction processing 95; and automated robotic filtration program 96.Automated robotic filtration program 96 may include dispatching roboticfilters 208 (FIG. 2) to a contaminated zone (e.g., zone 206 a (FIG. 2))within a data center 200 (FIG. 2) when air data collected by sensors(e.g., sensor 202 a (FIG. 2)) distributed throughout the data center 200(FIG. 2) satisfies a threshold value. Furthermore, the appropriate scopeto which the automated robotic filtration program 96 should be set tomay be based on received air data.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

What is claimed is:
 1. A processor-implemented method for filtering a plurality of air, the method comprising: receiving, by a processor, a plurality of air data collected by a sensor within a data center; determining that a portion of the received plurality of air data corresponding to at least one zone within the data center satisfies a threshold; transmitting a geographical location associated with the at least one zone that includes the sensor to a robotic filter based on determining that a portion of the received plurality of air data corresponding to the at least one zone within the data center satisfies a threshold; and dispatching the robotic filter to the transmitted geographic location to filter the at least one zone.
 2. The method of claim 1, further comprising: instructing the robotic filter to traverse the data center; receiving, from the instructed robotic filter, a plurality of digital images of the data center collected by the instructed robotic filter; locating the sensor based on the plurality received of digital images and detecting a frequency emitted by the located sensor; organizing the data center into the at least one zone based on detecting the frequency emitted by the sensor; and generating a digital representation of the organized data center based on the at least one zone.
 3. The method of claim 2, further comprising: determining a path from the robotic filter to the at least one zone based on the transmitted geographic location and the generated digital representation of the data center; and instructing the robotic filter to traverse the determined path.
 4. The method of claim 1, wherein the robotic filter has one or more filters and further comprises: selecting a filter of the one or more filters based on the received plurality of air data; and instructing the robotic filter to use the selected filter to filter the at least one zone.
 5. The method of claim 1, further comprising: receiving a plurality of external air data collected from an external sensor located outside the data center; comparing the received plurality of external air data to the received plurality of air data; and determining the geographical location within the at least one zone for the robotic filter to be oriented when filtering the at least one zone based on comparing the received plurality of external air data and the received plurality of air data.
 6. The method of claim 1, further comprising: transmitting, in response to the received plurality of air data satisfying the threshold, the received plurality of air data to a client device to be displayed within a user interface (UI).
 7. The method of claim 6, further comprising: determining an air filter utilized by the robotic filter has satisfied a filter threshold; and transmitting, in response to the determined air filter satisfying the filter threshold, a filter replacement indicator for display within the UI. 